//
//  global.hpp
//  NLCEQ_mixed
//
//  Created by Duong Ngo on 8/5/16.
//  Copyright © 2016 Duong Ngo. All rights reserved.
//

#ifndef global_hpp
#define global_hpp

#include <stdio.h>
#include <vector>

/* GLOBAL PARAMETERS */

//Bankers
extern const double varphi;      // Reserves Requirement
extern const double beta_b;      // Bankers's discount factor
extern const double Rn;  // Lower bound of interest on reserves
extern const double kappa;         // Capital requirement
extern const double thetaa;     // Cost of collecting loan
extern const double deltab;       // Loan amortization


//Households
extern const double beta_h;      // Household's discount factor
extern const double epsilon;        // Elasticity of substitution
extern const double alphaa;       // Parameters in production function
extern const double psi;          // Collateral constraints
extern const double deltak ;    // Capital depriciation
extern const double iota;           //Nominal Price Rigidity
extern const double chi;        // Labor disutility
extern const double bh_limit;      // Borrowing limit
extern const double nu;           // Inverse Frisch elastic


//Government policy
extern const double phipie;    //Policy repsonds to inflation


//FOC Problem
extern const int var_foc; //Number of variables in each period
extern const int gt_foc; //Number of constrainst in each period
extern const double pe;

// Global vector to stores the result from optimization
extern std::vector<double> result;

// Struct
struct variables {
    double  gamma, cb, Rf, Rm, ql, mur, muc, ip, pie, n, m, bh, k, tau, s, ch, etaz, lama, lamb, etab, i , pm, y, u, l;
};

















#endif /* global_hpp */
